﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;

using Jzy.Model.ESecretary;
using Frame.Lib.Core.User;
using Jzy.Model.OnlineUser;

namespace Jzy.Wcf.Secretary
{
    [ServiceContract]
    public interface ISecretarySvc
    {
        /// <summary>
        /// 部门用户树
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        List<DeptUserInfo> GetDeptUsers();

        /// <summary>
        /// 获得当前在线的用户ID,同时刷新自己的最后登录时间
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        List<int> GetOnlineUserIDs(int userID, string ip);

        [OperationContract]
        List<OnlineUserInfo> GetOnlineUserList();

        [OperationContract]
        LoginResult CheckLogin(string strLoginName, string strPassword, string ip);

        [OperationContract]
        int GetUserID(string strIP);

        [OperationContract]
        string GetUserIP(int userID);

        [OperationContract]
        string DoWork(string str);
      

        [OperationContract]
        string GetOAUrl();

        [OperationContract]
        OnlineUserInfo GetUserInfo(string loginName);

        [OperationContract]
        RemindMessage GetRemindMessage(int userID);

        [OperationContract]
        List<UserChatInfo> ReceiveMessage(int uesrID);

        [OperationContract]
        void SendMessage(UserChatInfo info);

        [OperationContract]
        void SendBatchMessage(UserChatInfo info,IEnumerable<int> receiveIDs);


      
    }
}
